home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 3 / Cream of the Crop 3.iso / program / dfvb19.zip / DFRAMEVB.HIS < prev    next >
Text File  |  1993-12-09  |  37KB  |  828 lines

  1.  
  2.                       HISTORY FILE FOR DOORFRAME VBDOS
  3.                       ================================
  4.  
  5.   DOORFRAME is now supported by Richard Paquette and Chuck Valecek.
  6.  
  7.   Richard Paquette at: The Livewire BBS 
  8.                        Public Nodes (2) call > 609-235-5297 HST (Ring Down)
  9.                        Private Nodes Not published until registered
  10.  
  11.   Chuck Valecek at   : Suburban Software BBS 
  12.                        Public Nodes (2) call > 708-636-6694 
  13.                                              > 708-636-6697
  14.                        Private Nodes Not Published until registered
  15.  
  16. Version 1.9
  17. -----------
  18. (12-10-93)
  19.  
  20.   With this version you MUST overwrite the dframex.inc file.. it WILL NOT
  21.   work properly without this INC file overwritten.. YOU BEEN WARNED!
  22.  
  23.   Changed most of the integer varibales to long integers, hopefully
  24.   this will stop some of those overflow problems using DOOR.SYS.
  25.   Added another routine called IN.KEY. This routine emulates the BASIC Inkey
  26.   command. You create a DO loop, call IN.KEY and watch the RESPONSE$ variable
  27.   for something other than a NULL.
  28.  
  29. Version 1.8
  30. -----------
  31. (06-28-93)
  32.  
  33.             This was the last version compiled by Ted Freeman..
  34.                      -> He died on July 13th 1993 <- 
  35.  
  36.   Well, looks like DoorFrame has finally grown to big for it's britches!
  37.  Wondered how long it would take with all the new stuff I've been adding.
  38.  Have had reports of String Space Corrupt errors which means it's time to
  39.  trim it down a bit. Consequently I had to decide what to discard. It was
  40.  a hard decision but I decided to drop support for WWIV's CHAIN.TXT file.
  41.  This will probably upset a few people but I tried to pick something that
  42.  would affect the least amount of systems.
  43.  Again, DOORFRAME NO LONGER SUPPORTS WWIV AND CHAIN.TXT.
  44.  
  45. (06-25-93)
  46.   Changed the way ENTER operates. Previously, it would accept any keystroke
  47.  and go on it's merry way. It now must actually receive an Enter key. This
  48.  change was made mainly for PCBoard/M. Although DoorFrame works flawlessly
  49.  with the vast majority of the systems running the M version, I have had a
  50.  couple of reports that on a few systems they are still getting 4 or 5
  51.  random characters at the start of the door. By using the ENTER subroutine
  52.  at the bottom of your opening screen, it should catch any extraneous
  53.  characters that should happen to pop up at the beginning (up to 80).
  54.  
  55.   Added another variable (like we NEED another one!). Check4RIP% lets you
  56.  the programmer decide if you want to check for RIPscrip compatibility.
  57.  Obviously if your door doesn't send RIPscrip codes, you could care less
  58.  if the remote is RIP compatible or not. The default for Check4RIP% is 0
  59.  which does not check. If you do want to check for RIPscrip, populate the
  60.  variable with a non-zero value. You must assign this variable before calling
  61.  Detect.Ansi.
  62.  
  63. Version 1.7
  64. -----------
  65. (06-17-93)  
  66.   DoorFrame will now recognize RIPscrip! There are two new variables
  67.  available, Rip% and Rip$. Rip% will be 0 if RIPscrip was not detected and
  68.  1 if it was. Rip$ will contain the RIPscrip version number in the format
  69.  RIPSCRIPxxyyzz where xx = major version number, yy = minor version number
  70.  and zz = revision code. For example if the version number is v1.52.00 
  71.  Rip$ would contain RIPSCRIP015200.
  72.   The Graphics% variable is not adjusted in response to the presence or 
  73.  absence of RIPscrip.
  74.  
  75. Version 1.6
  76. -----------
  77. (06-13-93)
  78.   Finally got this sucker to work with the PCBoard/M version! Although I
  79.  have no way of testing, it should also work with the Wildcat! IM software.
  80.  Maybe some of you Wildcatters can shoot me some feedback on whether it
  81.  does or not.
  82.   There is a trade-off involved (naturally!).  I still can't figure out
  83.  where the *'s are coming from so the only solution I could come up with was
  84.  to ignore any *'s. So if you have any In.Put statements that require an *
  85.  as a response, you will have to change it. This only applies when the /FD
  86.  (fossil driver) parameter is being used. When no fossil is being used, the
  87.  * is accepted like always.
  88.  
  89. Version 1.5
  90. -----------
  91. (04-21-93)
  92.   Added the RIP color switch for Wildcat! systems. Color is now displayed if
  93.  either GR or RIP is detected in the Wildcat! DOOR.SYS file.
  94.  
  95. (04-20-93)
  96.   When adding the addtional colors for the shadow in the Box.It routine, I
  97.  neglected to allow for Black as a color! Therefore, 0 now indicates a Black
  98.  shadow and -1 indicates no shadow is to be used.
  99.  
  100. (04-18-93)
  101.   Added the Cipher routines from the PBClone library. These two routines
  102.   (Cipher and CipherP) allow simple text encryption/decryption with password
  103.   protection. Check the PBC-SUBS.DOC file for instructions on their use.
  104.  
  105. (04-16-93)
  106.   Added the ClearBuffer routine. This routine allows you to clear either
  107.  the keyboard buffer, the communications input buffer, or both. Parameters 
  108.  are: 0 = Clear both, 1 = Clear comm. input only, 2 = Clear keyboard only.
  109.  
  110. (04-13-93)
  111.   Added another parameter to the SendAnsi routine. The third parameter is
  112.  Inter% and indicates whether or not to disable the ability to interrupt
  113.  the ANSI file with the spacebar as it is displaying. 0 = Don't disable, 
  114.  1 = Disable. The default is 0.
  115.  
  116. (03-29-93)
  117.   Added support for PCBoard v15.0 Alias name. I added this because the
  118.  ALIAS$ variable was already in DoorFrame. I will not be adding the rest of
  119.  the new stuff from v15.0 as that would needlessly inflate the size of the
  120.  library to support only one system. (so don't ask!)
  121.  
  122. Version 1.4
  123. -----------
  124. (03-25-93)
  125.   Well my tweaking of the DETECT.ANSI routine didn't work quite the way it
  126.  was intended to! Consequently it is back to the way it was before.
  127.  
  128. (03-24-93)
  129.   When using the Box.It routine, you may now specify a background color to
  130.  be used for the Shadow% parameter. 0 = No Shadow, 1 - 7 = Background Color
  131.  for the Shadow.
  132.  
  133. (03-20-93)
  134.   Fixed a problem with clearing the screen on the local display when in 
  135.  ASCII only mode.
  136.  
  137. (03-14-93)
  138.   Tweaked the DETECT.ANSI routine a bit. Hopefully it will do away with
  139.  those non-ANSI messages when ANSI is actually there!
  140.  
  141. Version 1.3
  142. -----------
  143. (02-25-93)
  144.   Well of course I had to screw something up when expanding the COM port
  145.  range! This only affected the DORINFOx.DEF systems but any COM port above
  146.  one got changed back to 1 which would usually result in a carrier lost
  147.  message.
  148.  
  149. (02-09-93)
  150.   Finally got around to expanding the COM port range. DoorFrame now supports
  151.  COM 0 thru 15.
  152.  
  153. Version 1.2
  154. -----------
  155. (01-12-93)
  156.   Silly me! When checking for the fossil driver parameter I neglected to put
  157.  the / in there. So it was checking for FD instead of /FD. That means if your
  158.  .CFG filename contained those 2 letters (as in dFDdemo!), it would pick that
  159.  up as the fossil parameter. Corrected now.
  160.  
  161. (01-07-93)
  162.   That old problem with the time expired when the Display was toggled off
  163.  in PCBoard popped up again! Fixed one more time (gotta quit changing things).
  164.  
  165. (01-03-93)
  166.   Removed the CLRSCRN during the INTIALIZE process so now clearing the
  167.  screen is up to you at the beginning of the door.
  168.  
  169. (12-23-92)
  170.   Fixed a stupid error on my part in the SENDANSI routine. I was opening the
  171.  file as FIL but was closing FILE! So the open file handles would just stack
  172.  up everytime the routine was called.
  173.  
  174. (12-12-92)
  175.   Added a new routine called SendAnsi. This routine is for true ANSI files
  176.  only! It sends the entire file non-stop. Pressing the Spacebar aborts the
  177.  file send. See the .DOC file for an explanation of accepted parameters.
  178.  
  179. Version 1.1
  180. -----------
  181. (11-24-92)
  182.   Noticed that I had only allowed for a single digit when specifying a
  183.  non-standard IRQ. That has been changed to accept 2 digits.
  184.  
  185. (11-19-92)
  186.   DoorFrame will now recognize the %pcbnode% and %wcnodeid% environment
  187.  variables when reading the path to the system file (1st line of the .CFG).
  188.  Some examples:
  189.     PCBoard: If USERS.SYS is located in C:\PCB\NODE1 directory, 
  190.        %pcbdrive%%pcbdir%\NODE%pcbnode%\USERS.SYS
  191.     Wildcat!: USERINFO.DAT located in C:\WC\NODE3 directory,
  192.        C:\WC\NODE%wcnodeid%\USERINFO.DAT
  193.     or if you SET the %pcbdrive% and %pcbdir% variables via the batch,
  194.        %pcbdrive%%pcbdir%\NODE%wcnodeid%\USERINFO.DAT
  195.  
  196. (11-15-92)
  197.   Changed the code so that USERINFO.DAT is written automatically. Therefore
  198.  you no longer need to use the User.Info% variable. Also took the routine
  199.  out that writes DOOR.SYS when using USERINFO.DAT. Since WildCat! doesn't
  200.  read it back in, that was sorta useless. (Thanks Dennis!)
  201.  
  202. (11-01-92)
  203.   DoorFrame now includes support for FOSSIL drivers!!! This means your Doors
  204.  will work with most multi-port boards. To activate the Fossil driver 
  205.  support, just include /FD on the command line when running the Door. 
  206.  For example: MYDOOR MYDOOR.CFG /FD
  207.  If no Fossil driver is available, DoorFrame will display a message to that
  208.  effect and exit gracefully.
  209.  
  210. (10-24-92)
  211.   Some of you may have noticed a slow down in the Dis.Play command after the
  212.  color codes were added (~, `, @, ^, |, {, and }). Dis.Play now has an 
  213.  additional parameter (Codes%) that let's you specify whether or not you 
  214.  are using the color codes. If a particular Dis.Play statement doesn't use
  215.  the codes, place a 0 in the Codes% parameter and the routine that checks
  216.  for and strips those characters will be bypassed. Thus significantly
  217.  increasing the display speed.
  218.  
  219. (10-23-92)
  220.   Added 2 more parameters to the In.Put command. These new parameters allow
  221.  you to specify a different color if you populate the Text$ parameter. Refer
  222.  to the docs for a full explanation.
  223.  
  224. Version 1.0
  225. -----------
  226. (10-19-92)
  227.   Well, should have known I would screw something up! Sure enough I did on
  228.  the LastOn$ variable. In the USERS file, it is in the format YYMMDD and 
  229.  is converted to the MM-DD-YY format when read. I neglected to convert it
  230.  back when writing to the USERS file.
  231.  
  232. (10-18-92)
  233.   Would you believe ... all this time DoorFrame has been reading info from
  234.  the PCBoard USERS file but hasn't been writing it! Actually, this would 
  235.  only affect a few of the variables. Anyway, that oversight has been
  236.  corrected. (Thanks Peter!)
  237.  
  238. (10-10-92)
  239.   Had reports of conflicts when using non-standard IRQ's on Novell/Netware
  240.  systems. Seems Novell also uses the / character so something went screwy
  241.  somewhere. So I added the * (asterisk) which may be used instead of the /
  242.  in case of a conflict. In other words, /%IRQ% and *%IRQ% will both work
  243.  and are interchangeable.
  244.  
  245. (09-23-92)
  246.   Fixed a bug when restoring the screen after Chat or Drop to DOS. It would
  247.  generate an illegal function call whenever it hit a blinking character.
  248.  
  249. (09-22-92)  
  250.   And still another version of DoorFrame for Visual Basic for MS-DOS!
  251.  
  252.   You now have the option of taking control after a carrier loss in case you
  253.  need to do some clean-up before recycling back to the BBS. BE VERY CAREFUL
  254.  with this one! Check the Docs under Miscellaneous Notes for an explanation.
  255.  
  256. =============================================================================
  257. The following history file is from the PDS (BASCOM) version of DoorFrame but
  258. the changes/additions still apply to the Visual Basic version.
  259. =============================================================================
  260.  
  261.                    HISTORY FILE FOR DOORFRAMEX (BASCOM 7.X)
  262.                    ========================================
  263.  
  264. Version 2.1
  265. -----------
  266. (09-20-92)
  267.    Fixed a problem when using the new no-show option of In.Put. If you used
  268.   a Dis.Play statement with color codes immediately after that, it would
  269.   show the color codes rather than the color.
  270.  
  271. (09-14-92)
  272.   The In.Put command now features word-wrap ability! If you put, for example,
  273.  160 as the first parameter, it will wrap around at the nearest space when it
  274.  reaches column 80 on the screen. Backspacing also works over the word-wrap.
  275.  
  276.   DoorFrame will now handle the 30-something line DOOR.SYS file as well as 
  277.  the 52-line one.
  278.  
  279.   Corrected some errors in writing the SFDOORS.DAT file. Specifically the
  280.  COMPORT% and DAILY.BYTES.ALWD& variables.
  281.  
  282. (09-13-92)
  283.   Added 5 new parameters to the In.Put command. 
  284.       AutoCR% - Automatic Carriage Return. 0 = No, 1 = Yes
  285.       Text$   - Text to display (if any).
  286.       Xpos%   - X coordinate to print Text$
  287.       Ypos%   - Y coordinate to print Text$
  288.       Show%   - 0 = Don't display response, 1 = display response
  289.  For example:
  290.  
  291.     In.Put 5, 0, 11, 0, 0, "", 0, 0, 1
  292.  
  293.  would accept 5 characters but would not return until the user hits the
  294.  ENTER key. Conversely,
  295.  
  296.     In.Put 5, 0, 11, 0, 1, "Well? ", 20, 1, 1
  297.  
  298.  would accept 5 characters and automatically return from the routine. It will
  299.  also print 'Well? ' at location 20, 1 and the response would be displayed.
  300.  If you wanted a Hot Key and didn't want the response to show:
  301.  
  302.     In.Put 1, 0, 11, 0, 1, "Y/N ", 20, 1, 0
  303.  
  304.  would prompt for 'Y/N' but would not display the response. The variable
  305.  Response$ will still contain whatever was typed even though it didn't show
  306.  up on the screen.
  307.  
  308. (09-11-92)  
  309.   Finally installed the screen restore when coming back from Chat or a Drop
  310.  to Dos. Been wanting to do that for months now! It will now put the screen
  311.  back like it was including anything typed at an In.Put prompt. If the caller
  312.  had entered anything before the interruption, that is restored and he can
  313.  pick up right where he left off!
  314.  
  315. Version 2.0
  316. -----------
  317. (09-06-92)
  318.   Had a request to be able to turn off the Status lines at the bottom of the
  319.  screen so that has been installed. To blank out those 2 lines, set the
  320.  variable No.Status% = 1 and do a ClrScrn. Sorry but those 2 lines are still
  321.  not available for printing (that would mean changing half the routines in
  322.  DoorFrame!).
  323.  
  324. (09-05-92)
  325.   Fixed an intermittent problem with the cursor jumping to the top left of
  326.  the screen when backspacing.
  327.  
  328. (09-04-92)
  329.   Did some more code optimizing. The same door used below in v1.9 now compiles
  330.  to 106,610 for an additional reduction of 6K in the .EXE!
  331.  
  332.   You should also notice a tremendous increase in the display speed. Using
  333.  a test program that printed 18 lines and contained the color codes around
  334.  each word, it took 30.92 seconds for v1.9 to finish. Version 2.0 did it in
  335.  8.95 seconds. That's a speed increase of over 345%!
  336.  
  337.   Added 2 new routines to the library. ClrMol clears in the middle of a line
  338.  for the number of specified columns. ClrSol clears from the specified X, Y
  339.  coordinates to the start of that line.
  340.  
  341. (09-03-92)
  342.   Re-paged the docs to a maximum of 60 lines per page for laser printers.
  343.  
  344. Version 1.9
  345. -----------
  346. (08-27-92)
  347.   Did some more optimizing of the code so your .EXE files should be a bit
  348.  smaller than with v1.8.  One of my doors compiled to 114,288 with v1.8 and
  349.  112,754 with v1.9, so it knocked almost 2K off the final .EXE!
  350.  
  351.   Fixed a problem which, in certain instances, would generate a 'Time
  352.  Expired' message when the local display was toggled off (F9).
  353.  
  354. (08-24-92)
  355.   Added a bunch more routines from Hanlin's PBClone library. I'll leave you
  356.  the fun of discovering which ones. <G>
  357.  
  358.   Deleted the BIOSINKEY and KEYPRESS routines since they are local keyboard
  359.  only routines.
  360.  
  361. Version 1.8
  362. -----------
  363. (06-21-92)
  364.   Added support for TriBBS software. DoorFrame both reads and writes the
  365.  TRIBBS.SYS file.
  366.  
  367. (06-15-92)
  368.   Added a new Back.Space routine. Syntax is: Back.Space Row%, Col%, Num%
  369.  Give it the row, column, and number of backspaces, the cursor will be
  370.  positioned at the last backspace so if the Col% = 20 and Num% = 5, the
  371.  cursor is left at column 16 (columns 20, 19, 18, 17, and 16 are erased).
  372.  
  373. Version 1.7
  374. -----------
  375. (06-03-92)
  376.   Fixed an oversight dealing with the TimeAdjust% variable. The problem wasn't
  377.  with the variable itself but rather with the frequency of updating the Status
  378.  line (which was every 30 seconds). Now it will update after each Dis.Play
  379.  statement. So if you are adjusting the callers time right before leaving the
  380.  door, just Dis.Play a space or something immediately after using TimeAdjust%.
  381.  
  382. (05-24-92)
  383.   Added the 'Last New Files Date' variable for those systems using Wildcat!'s
  384.  USERINFO.DAT. The variable name is LastScan$
  385.  
  386. (05-20-92)
  387.   Finally added a feature that has been sorely needed. You may now run your
  388.  doors from the DOS command line. Syntax is MYDOOR LOCAL. DoorFrame will plug
  389.  in enough dummy variables to enable it to run without using a BBS file.
  390.  Since the .CFG file will not be opened when using LOCAL, you should bypass 
  391.  any access to the .CFG file. If you MUST read additional lines from the .CFG
  392.  then I would suggest not using the LOCAL option.
  393.  
  394. (05-12-92)
  395.   Fixed a bug in the In.Put routine. Seems that the ASCII (or extended) SHIFT
  396.  code for H, K, M, and P are the same as the scan codes for the arrows! So it
  397.  was interpreting those 4 letters as arrow codes instead of the correct letter
  398.  codes. The routine now checks the value of SysopKeys% to determine if it is
  399.  a letter or an arrow. If SysopKeys% = 0, it's a letter, if SysopKeys% = 1,
  400.  it's an arrow. This means you must only set SysopKeys% = 1 when you want to
  401.  use the arrow keys since those 4 letters will also be interpreted as arrow
  402.  keys. If you are expecting alphabetic input, you will get some strange
  403.  results!
  404.  
  405. (05-11-92)
  406.   Thought I had fixed it so no beeps were heard on the local but not so. It
  407.  is fixed now, fer sure, fer sure!
  408.  
  409. (05-09-92)
  410.   Learned what the Extra Time field was for in SFDOORS.DAT (thanks Chuck).
  411.  Now if you utilize the TimeAdjust% variable, the Extra Time field in 
  412.  SFDOORS.DAT will be adjusted up or down accordingly.
  413.  
  414.   Found out that Wildcat! looks for an Error Level of 1 when recycling so
  415.  DoorFrame now generates a DOS error level of 1 when running under Wildcat!
  416.  systems and error level 62 for all others (for now!).
  417.  
  418. (05-05-92)
  419.   DoorFrame will now generate a DOS error level of 62. I understand that
  420.  GAP systems can use this to correctly recycle the BBS whenever someone logs
  421.  off from inside a door. Need some feedback on other systems please. 
  422.  
  423.   Added a couple of needed variables that were omitted when writing the
  424.  PCBoard USERS.SYS file. The descrepancy would only show up when logging
  425.  off from within a door but the time used and last date on were not being
  426.  updated.
  427.  
  428. (05-02-92)
  429.   Think I finally came up with a workable solution to get rid of the TIMER
  430.  routines which drives a math coprocessor up the wall. The trade-off is that
  431.  the status line will only be updated whenever input is required from the
  432.  caller.
  433.  
  434. Version 1.6
  435. -----------
  436. (04-29-92)
  437.   Included with this version is the .BAS source for a door called DFDEMO. It
  438.  demonstrates some of the features of DoorFrame.  You may also want to use
  439.  it to pick up some tips on using some of the routines.  The EXINPUT.BAS and
  440.  DISPLAY.BAS files have been removed.
  441.  
  442. (04-27-92)
  443.    Took me a whole day's work, but I dood it!  You may now use the color
  444.  codes as often as you wish when Dis.Playing a line. In addition the colors
  445.  and blinking are each independent of each other, so you can blink one, some,
  446.  all, or none! The % turns on the blinking for each set of codes.
  447.  
  448.   Added a parameter to the ClrScrn routine. You may now clear the local and
  449.  remote screen in any background color you wish (0 - 7).
  450.  
  451.   Did a bit more optimizing of the code and even with the new stuff added,
  452.  was able to reduce the size of .LIB by almost 3K!   
  453.  
  454. (04-24-92)
  455.   In an effort to cut down on the number of variables we have to deal with
  456.  (and hopefully cut down on memory requirements), I have combined the various
  457.  system variables (Pcboard%, WildCat%, etc.) into one. System.File% will take
  458.  their place. The value of System.File% will tell you which BBS file is being
  459.  used according to the following values:
  460.      1 = PCBOARD.SYS            2 = USERS.SYS           3 = DOOR.SYS
  461.      4 = CALLINFO.BBS           5 = CHAIN.TXT           6 = DORINFOx.DEF
  462.      7 = SFDOORS.DAT            8 = USERINFO.DAT        9 = GTUSER.BBS
  463.  
  464.   Deleted the Num.Dl.Today% variable. Use DlToday& instead.
  465.  
  466. (04-23-92)
  467.   Have been receiving reports of an Error 6 (overflow) when using DoorFrame
  468.  doors with the latest version of Spitfire.  Have been trying to locate an
  469.  actual SFDOORS.DAT file. Finally one of my users uploaded one to me (thanks
  470.  Aldo!). Lo and behold in the Downloads Per Day field there was 54,730! 
  471.  So to stave off any more problems like this, I have changed the DlPerDay%,
  472.  DlToday%, Downloads%, and Uploads% from INTEGER to LONG INTEGER.
  473.  
  474.   Used that extra space from the ON KEY and added support for GT Power's
  475.  GTUSER.BBS file. The .CFG file for this one is a little different.  Since
  476.  the file doesn't provide the COM port or Node numbers, they must be added on
  477.  lines 5 and 6 of the .CFG file.
  478.  
  479. (04-22-92)
  480.   Been reading how the ON KEY statement adds a lot of overhead to QB programs
  481.  so have been researching how to get rid of them. Lo and behold, I found this
  482.  neat little routine to do just that!  So all the ON KEY (and the associated
  483.  KEY statements) are gone.  This change also knocked almost 2K off the size
  484.  of the library.
  485.  
  486. Version 1.5
  487. -----------
  488. (04-20-92)
  489.    Added the PCBoard Language extension parameter, LANGUAGE$, at the request
  490.  of one of our European users. (Thanks Peter!) This variable will contain the
  491.  extension of the language file, i.e.  .FRE for the French language. When
  492.  using the default language (whichever one that is), this variable will
  493.  contain 4 spaces.
  494.  
  495. (04-17-92)
  496.   Added two new parameters to the BOX.IT routine. HFG% and HBG% now let's
  497.  you specify the foreground and background colors when using a Title$ on
  498.  your boxes.  Also added a check to see if Title$ is longer than the box.
  499.  This would generate an Illegal Function error previously. Your Title$ must
  500.  be at least 6 characters less than the width of the box. If it is longer
  501.  than that, the routine simply ignores the Title$.
  502.  
  503. Version 1.4
  504. -----------
  505. (04-10-92)
  506.   Made some small changes in reading the PCBoard USERS file (nothing major).
  507.  Noticed that the callers first name variable was missing from DOOR.SYS,
  508.  USERINFO.DAT etc. so those have been added.
  509.  
  510. (04-04-92)
  511.   Fixed a small error in the SEND command when displaying an ASCII file.
  512.  Seems it was reading from one file number and looking for the end of 
  513.  another which would either not display all the file or generate an INPUT
  514.  PAST END error.
  515.  
  516. (03-21-92)
  517.   DoorFrame doors may now make use of the IRQ environment variable. For
  518.  example, instead of DOOR DOOR.CFG /5 you can use DOOR DOOR.CFG /%IRQ%
  519.  
  520. (03-19-92)
  521.   DoorFrame is now aware of the PCBoard environment variables %PCBDRIVE% and
  522.  %PCBDIR%. Although it is tranparent to you, the programmer, if it finds
  523.  those two variables on the first line of the .CFG file it will substitute
  524.  the correct drive and path.
  525.   Also fixed a small bug with the time remaining when using USERS.SYS. 
  526.  
  527. Version 1.3
  528. -----------
  529. (03-07-92)
  530.   Fixed a small problem with the high score bulletin. If the bulletin was in
  531.  other than the current directory, the path for the graphics bulletin got
  532.  screwed up.
  533.  
  534.   Added a new variable - Hi.Ascii% which allows you to accept ASCII values
  535.  from 128 to 255. This was added at the request of one of our European users
  536.  since some languages need to use those characters.  Hi.Ascii% = 1 will enable
  537.  this option. The default is zero (disabled).
  538.  
  539. Version 1.2
  540. -----------
  541. (02-23-92)
  542.   One more time on the SEND routine! I was checking the first few characters
  543.  of a file for the CHR$(27) and if found just assumed that the file was all
  544.  ANSI. Not so! Seems there are 'hand-made' files out there that have the
  545.  color codes at the beginning of a line but no where else. So...... redid it
  546.  one more time (hopefully the last!).
  547.  
  548. (02-21-92)
  549.   Optimized the code a bit and moved some routines from the main module to
  550.  the library.  Tested with just a two-line program and the size of the .EXE
  551.  went from 83,034 before optimizing to 72,782 after optimizing.  So that
  552.  should cut down on your file sizes a bit!
  553.  
  554. (02-17-92)
  555.   NOTE: The parameters for the SEND routine have changed with this version!
  556.  The new syntax is SEND FileName$, YN%, Clr%  where Clr% is 0 (home cursor,
  557.  do not clear screen) or 1 (yes, clear screen).
  558.  
  559. Version 1.1
  560. -----------
  561. (02-14-92)
  562.   Added a new routine, ClrEOL. This one will clear to the end of the line.
  563.  You can specify where to start clearing. Example:  ClrEOL 10, 10, 1
  564.  will do it's thing on row 10 and clear from column 10 to the end of the line
  565.  and color it blue. The parameters are Xpos, Ypos, Color. Enjoy!
  566.   Fixed a stupid mistake in the SEND routine. I open CONS: for printing to
  567.  the local screen and misspelled it CON! Funny thing is, it worked except 
  568.  when accessing across a network!
  569.   Added GetDView which returns the version of DESQview loaded or zeroes if
  570.  DESQview is not loaded.
  571.  
  572. (02-10-92)
  573.   Think I finally got that pesky bug in the SEND routine when sending ANSI
  574.  screens fixed! Tested it both local and remote here and it seems to work
  575.  fine. Give it a good workout and let me know if it screws up.
  576.   One quirk I found when using The Draw was when I saved the screen with
  577.  ALT-S it didn't transmit quite right. But when the same screen was saved
  578.  using ALT-B, the screen transmitted perfectly. Go figure! 
  579.  
  580. (02-09-92)
  581.   Had some reports of the Backspace locking systems in local mode in the
  582.  QuickBasic 4.5 version. Did some checking in the routine and the only thing
  583.  I could find that could possibly be the culprit was an IF NOT LocalUsr%
  584.  statement. Since I have had some problems with NOT in the past, I changed
  585.  that statement to IF LocalUsr% = 0. Although I have not had any reports of
  586.  the BASCOM version of DoorFrame locking systems, I made the change just to
  587.  be sure.
  588.   BTW, new BBS number and address with this version.
  589.  
  590. Version 1.0
  591. -----------
  592. (10-25-91)
  593.   Changed the second parameter on the IN.PUT routine from an integer to a
  594.  single precision number. This allows you to specify a waiting time of less
  595.  than 1 second. The minimum wait is now 1/18th of a second (.005 works
  596.  pretty well).
  597.  
  598. (10-21-91)
  599.   Although DoorFrame has an extensive history in the QuickBasic 4.x
  600.  environment, this is the initial release for BASCOM 7.x. The two
  601.  libraries are identical expect for the following routines. 
  602.  
  603.                         FindFirstF        GetDrv
  604.                         FindNextF         GetExecPath
  605.                         GetNameF          GetSub
  606.                         Exists%           GetSub1
  607.                         Exist2%           RInstr
  608.                         SubExist
  609.  
  610.  Most of those routines are available in BASCOM and have become redundant.
  611.  
  612.   The HISTORY file for the Quickbasic 4.x version is included below since those
  613.  changes/fixes/enhancements will usually apply to the BASCOM version. Also,
  614.  there may be some things in here that I neglected to add to DFRAME.DOC.
  615.  
  616.  
  617.  
  618.                           HISTORY FILE FOR DOORFRAME
  619.                           ==========================
  620.  
  621. Version 2.4
  622. -----------
  623. (10-05-91)
  624.   Fixed an oversight in writing the Wildcat! 3.x USERINFO.DAT. Line 16
  625.  (DoorLogoff$) will now show "Y" if the caller logged off from the Door.
  626.  
  627. (09-08-91)
  628.   You may now use the ARROW keys. DoorFrame now has an alternate set of keys
  629.  for the Level and Time adjustments. To switch these keys from the ARROW keys
  630.  to the alternate, use SysopKeys% = 1 AFTER you call INITIALIZE. When you
  631.  have SysopKeys% set to 1, PgUp = add time, PgDn = subtract time, INSert =
  632.  add level, and DELete = subtract level. SysopKeys% defaults to 0 so doors
  633.  compiled with previous versions of DoorFrame will work as before.
  634.   When SysopKeys% = 1 pressing one of the arrow keys will return the
  635.  following in RESPONSE$:
  636.     Up Arrow    - RESPONSE$ = "UP"
  637.     Dn Arrow    - RESPONSE$ = "DOWN"
  638.     Left Arrow  - RESPONSE$ = "LEFT"
  639.     Right Arrow - RESPONSE$ = "RIGHT"
  640.  
  641. (09-06-91)
  642.   Would you believe I left out the code for low-intensity white in the
  643.  DIS.PLAY routine! It has been added. (Thanks to Jerry Claxton for finding
  644.  that one!)
  645.   Added the ability to use low intensity colors when using the symbols in
  646.  the DIS.PLAY routine. To make a color low intensity just put a * in front
  647.  of the first symbol. Ex: *}text} displays 'text' in low intensity white.
  648.  
  649. (08-30-91)
  650.   Changed the EXIT.DOOR "G" routine to allow logoffs on all systems, not just
  651.  PCBoard.
  652.   Changed the WildCat! 3.0 routines so that it DOES NOT automatically write
  653.  the USERINFO.DAT file. If you wish to write this file, set User.Info = 1
  654.  before calling EXIT.DOOR.
  655.  
  656. Version 2.3 
  657. -----------
  658. (06-20-91)
  659.   Added support for WildCat! v3.0. This version of WildCat! no longer uses the
  660.  CALLINFO.BBS file. It now uses the 31-line version of DOOR.SYS and creates an
  661.  additional file called USERINFO.DAT. 
  662.  
  663. (7-07-91)
  664.   They finally woke up at Mustang! Software and are now using the standard
  665.  52-line DOOR.SYS like everyone else. This release adjusts for that. Just put
  666.  the path to USERINFO.DAT on line 1 of the .CFG file (instead of DOOR.SYS).
  667.  Make sure that DOOR.SYS is in the same directory as USERINFO.DAT!
  668.  
  669. Version 2.2
  670. -----------
  671. (03-31-91)
  672.   Added support for non-standard IRQ numbers (other than IRQ3/IRQ4). See the
  673.  docs for info on how to implement this.
  674.  
  675. Version 2.1 (03-23-91)
  676. ----------------------
  677.   Modified the LINES routine. Now if you draw intersecting vertical and
  678.  horizontal lines, the appropriate character will be inserted where the
  679.  lines cross. For example, at the intersection of two double lines the
  680.  character ╬ would be printed.
  681.   Tweaked the MORE routine a little. It was doing a CR/LF after the prompt
  682.  so it wasn't getting erased because it was on the line above!
  683.   Also put in logic in the MORE and ENTER routines to restore the cursor to
  684.  it's position before the call.
  685.   Fixed a problem in DORINFOx.DEF where the Sysop names where being taken
  686.  from DORINFO instead of the configuration file. Also allowed for the fact
  687.  that the RBBS DORINFO has 13 lines instead of 12.
  688.   Still didn't have the DORINFOx.DEF quite right for RBBS. Hopefully it will
  689.  work as it should now (helps when you use the correct LINE INPUT statement).
  690.   One more time on DORINFO to fix the BBSSYS$. Also fixed a problem in
  691.  picking up the correct node number.
  692.  
  693. Version 2.0 (02-02-91)
  694. ----------------------
  695.   Fixed a problem with the backspace when the cursor was in columns 79 or
  696.  80 (it wouldn't).
  697.   Enlarged the PRINT USING in the High Score Bulletin. It will now handle
  698.  scores up to 9,999,999,999.
  699.   Made DoorFrames internal error trapping available for those of you who
  700.  wish to utilize it instead of writing your own. All Basic errors are
  701.  trapped and will be written to DFRAME.ERR upon exiting the door.
  702.   Added support for WWIV's CHAIN.TXT file. DoorFrame both reads and writes
  703.  this file. It is untested as of this writing so watch it!
  704.   Added 2 more parameters to the IN.PUT routine. These are INTEGERS and
  705.  indicate the foreground and background colors for the input.
  706.   Updated the CALLINFO.BBS routine to read the newer 36 line format. It
  707.  will still handle the old 30 line format ok.
  708.   Added a parameter to the SHOW.BLT routine. This is a STRING and is
  709.  either "Y" or "N". The "Y" tells the routine to display the "Do you want
  710.  to see the Bulletin" prompt while "N" will bypass the prompt. If you have
  711.  an option on your door menu to view the bulletin, you would use "N" (why
  712.  ask them again!).
  713.  
  714. Version 1.9 (12-31-90)
  715. ----------------------
  716.   Fixed a bug when using the `, @, {, ^ etc. symbols. If one of these
  717.  symbols was entered at an IN.PUT prompt, the program would go bananas.
  718.   I had inadvertantly left out the ENTER prompt at the end of the SEND
  719.  routine so when someone brought it to my attention I belated added it.
  720.  Now I find that is the way some of you want it! So in order to satisfy
  721.  both camps, I have added a parameter to SEND. The syntax is now:
  722.    SEND (MSG$, YN%)   where YN% is an INTEGER. 0 = don't send the ENTER
  723.  prompt at the end, 1 = yes, use it. 
  724.   Added support for Spitfire's SFDOORS.DAT. DoorFrame both reads and writes
  725.  to this file.
  726.   Added the ability to log off from within the Door. However, this option is
  727.  for PCBoard systems only!
  728.   Added MAKE.BLT.CURRENT routine which posts current scores instead of the
  729.  highest scores attained.
  730.   Fixed a bug in the MAKE.BLT routines. It didn't take kindly to an extension
  731.  being included in the Bulletin filename!
  732.  
  733.                          AND THAT'S IT FOR THIS YEAR!!
  734.  
  735. Version 1.8 (12-16-90)
  736. ----------------------
  737.   Added a few more subroutines for programmer convenience. These routines
  738.  will add some capabilities not found in QuickBasic. Routines added are:
  739.    DelFile, DrvSpace, GetDrv, GetExecPath, GetKbd, GetSub, NameCase,
  740.    RInstr, SetError, SetKbd and SubExist.
  741.   Fixed a problem with the ALLOWEDBYTES# variable (helps if you add it to
  742.  the DFRAME.INC file!).
  743.  
  744. Version 1.7 (12-13-90)
  745. ----------------------
  746.   Added support for PCBoard 14.5's USERS.SYS file! Since the bug reports
  747.  had started slacking off, thought I would introduce a few more 8-).
  748.   Added option for no border (spaces) in the BOX.IT routine.
  749.   Forgot to add an ENTER prompt after the last page in the SEND routine. 
  750.  Fixed now.
  751.   Had some reports of Security Levels higher than 32,767 so the LEVEL
  752.  variable has been changed from an INTEGER (%) to a LONG (&).
  753.   Took the Time Left warnings out. They only messed up the screen! So if 
  754.  you want to warn the caller when time gets low, you should check the
  755.  TIMELEFT% variable and display a message accordingly. 
  756.  
  757. Version 1.6 (12-11-90)
  758. ----------------------
  759.   Fixed a problem in the error handling routines. It will hopefully handle
  760.  errors better now and exit gracefully.
  761.   Fixed the 'keyboard timeout' problem when coming out of Chat mode.
  762.   Fixed another Chat mode problem where the lines on the remote screen
  763.  would overwrite when it reached line 23.
  764.   Optimized the library a bit. Cut about 13K off the size of the .LIB.
  765.   Added a check for DOS version. If the DOS version is less than 3.0 it
  766.  will display an error message and exit (DOS 3.0+ is required because the
  767.  files are opened in SHARED mode).
  768.  
  769. Version 1.5 (11-30-90)
  770. ----------------------
  771.   Finally got the midnight time problem fixed where the caller would get a
  772.  time expired message if he had logged on the BBS before midnight and 
  773.  entered the door after midnight.
  774.   Fixed an error when using DORINFOx.DEF. It worked fine as long as
  775.  DORINFOx.DEF was the only thing there but went screwy if you threw a path
  776.  at it.
  777.   When I added the options for color in the middle of a line of text, I
  778.  inadvertantly disabled the full-line blink. Now fixed.
  779.  
  780. Version 1.4 (11-25-90)
  781. ----------------------
  782.   Added some enhancements to the DIS.PLAY routine. By using special symbols,
  783.  selected text can be displayed in different colors (like BLUE, YELLOW, BLUE)
  784.  without having to use 3 DIS.PLAY statements. See the DOCS and DISPLAY.BAS
  785.  for a complete explanation.
  786.   Added the MODE% variable. Previously if you used DETECT.ANSI, the caller
  787.  would be switched to COLOR MODE automatically. With the MODE% variable, the
  788.  color will be on or off depending on the caller's BBS setting.
  789.   Modified the IN.PUT routine somewhat. It now requires 2 parameters to be
  790.  passed. The first parameter is the desired length of the input and the 
  791.  second is the length of time to wait for that input.
  792.  
  793. Version 1.3 (11-20-90)
  794. ----------------------
  795.   Added a time limit option to the IN.PUT routine. See EXINPUT.BAS for
  796.  and example on using it.
  797.   Fixed an 'oversight' in the OUT.PUT routine. Completely left out updating
  798.  the column position!
  799.   Made a correction in the centering routine. Now when you use centering
  800.  with a colored background, you don't get the colored line all the way
  801.  across the screen! Also, if you do an IN.PUT after a center it will be
  802.  properly positioned after the prompt instead of on the right edge.
  803.  
  804. Version 1.2 (11-17-90)
  805. ----------------------
  806.   Made the Keyboard Timeout configurable by the programmer. Before calling
  807.  INITIALIZE, populate TIMEOUT% with the number of seconds you want for
  808.  input. If you do not specify a TIMEOUT%, it will default to 5 minutes.
  809.  The minimum is 60 secs so anything less than that will be the default.
  810.   Added support for DORINFOx.DEF which now gives us QBBS, RBBS, and
  811.  Remote Access! (Note: This needs to be tested more. Any volunteers?)
  812.  
  813. Version 1.1 (11-12-90)
  814. ----------------------
  815.   Fixed a problem with the cursor positioning routines when the local display
  816.  was toggled off (it didn't work!).
  817.   Changed the BOX subroutine to BOX.IT to avoid a naming conflict with other
  818.  add-on packages for QB 4.5. (Crescent Software's for one).
  819.   Added support for CALLINFO.BBS so your doors will now run on Wildcat! 
  820.  systems without a converter!
  821.  
  822. Version 1.0 (11-1-90)
  823. ---------------------
  824. Initialize release.
  825.  
  826.  
  827.  
  828.